package cn.wolfcode.domain;

import lombok.*;

import java.util.ArrayList;
import java.util.List;

/**
 * @Description: 员工实体类
 * @Author: 伍家钰
 * @Date: 2020/7/11 19:12
 * @Version: 1.0
 */
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@ToString
public class Employee {
    /**
     * 员工id
     */
    private Long id;

    /**
     * 员工姓名
     */
    private String name;

    /**
     * 员工密码
     */
    private String password;

    /**
     * 员工邮箱
     */
    private String email;
    /**
     * 员工年龄
     */
    private Integer age;

    /**
     * 是否是超级管理员
     */
    private boolean admin;

    /**
     * 员工关联的部门对象
     */
    private Department dept;

    /**
     * 员工关联的角色表,一个员工可以身兼多个角色,所以用集合封装
     */
    private List<Role> roles = new ArrayList<>();

    /**
     * 员工账号状态
     */
    private boolean status = true;

    /**
     * 获取部门id,因为使用shiro中的principal无法获取到二级对象的信息
     *
     * @return
     */
    public Long getDeptId() {
        return dept.getId();
    }
}